import Vue from 'vue';
import Router from 'vue-router';
import routerConfig from './routerConfig';
// import {findTreeNode} from '@/utils/index.js';
import NProgress from 'nprogress';
import 'nprogress/nprogress.css';
NProgress.configure({
  // minimum: 0.1, // 最小百分比
  // template: '...', // 修改标记结构，需要一个包含 role='bar' 属性的元素。
  // ease: 'ease', // 动画设置
  // speed: 500, // 速度设置毫秒ms
  // trickle: false, // 关闭进度条步进
  // trickleRate: 0.02, // 度条步进
  // trickleSpeed: 800, // 度条步进速度毫秒ms
  showSpinner: false // 关闭进度环 默认true
});

// 白名单无需验证
// const URL = ['/login', '/redirect', '/waterSys', '/bmap'];

Vue.use(Router);
const router = new Router({routes: routerConfig});

// router.beforeEach((to, from, next) => {
//   NProgress.start();
//   next();

//   const permissionTree = JSON.parse(window.sessionStorage.getItem('permissionTree')) || [];
//   const token = window.localStorage.getItem('token');

//   // 无需过滤权限的白名单页面
//   const url = [...URL];
//   if (url.includes(to.path)) {
//     next();
//   } else {
//     if (token) {
//       if (to.path) {
//         const node = findTreeNode(permissionTree, 'uri', to.path);
//         if (node && node.selected) {
//           console.log(`有${
//             to.path
//           }页面权限`);
//           next();
//         } else {
//           console.log(`无${
//             to.path
//           }页面权限`);
//           router.push({name: '404'});
//         }
//       }
//     } else {
//       router.push({name: 'login'});
//     }
//   }
// });

// router.afterEach(() => {
//   NProgress.done();
// });

export default router;

